import matplotlib.pyplot as plt
import numpy as np

# 使用np.linspace定义x：范围是(-3,3)，个数是50，将产生一组（-3，3）内均匀分布的50个数；(x,y1)表示曲线1，(x,y2)表示曲线2。
x = np.linspace(-5, 5, 100)
# print(x)
y1 = 2 * x + 1
y2 = x ** 2

plt.figure(num=3, figsize=(8, 5))
plt.plot(x, y2, label='quxian')
plt.plot(x, y1, color='red', linewidth=2.0, linestyle='--', label='zhixian')
plt.legend(loc='lower right')
# 使用plt.xlim设置x坐标轴范围：(-1, 2)； 使用plt.ylim设置y坐标轴范围：(-2, 3)； 使用plt.xlabel设置x坐标轴名称：’I am x’； 使用plt.ylabel设置y坐标轴名称：’I am y’
# plt.xlim((-1, 2))
# plt.ylim((-2, 3))

plt.xlabel('I am x')
plt.ylabel('I am y')

# new_ticks = np.linspace(-1, 2, 5)
# print(new_ticks)
# plt.xticks(new_ticks, ['a','b','c','d','e'])
# plt.yticks([-2, -1.8, -1, 1.22, 3], [r'$really\ bad$', r'$bad$', r'$normal$', r'$good$', r'$really\ good$'])
# plt.yticks([-2, -1.8, -1, 1.22, 3])


# 细心的小伙伴可能会注意到，我们的图像坐标轴总是由上下左右四条线组成，我们也可以对它们进行修改：首先，使用plt.gca()获取当前坐标轴信息。使用.spines设置边框：右侧边框；使用.set_color设置边框颜色：默认白色； 使用.spines设置边框：上边框；使用.set_color设置边框颜色：默认白色
ax = plt.gca()
ax.spines['right'].set_color('none')
ax.spines['top'].set_color('none')

ax.xaxis.set_ticks_position('bottom')
ax.spines['bottom'].set_position(('data', 0))

ax.yaxis.set_ticks_position('left')
ax.spines['left'].set_position(('data', 0))

plt.show()
